主题
鼠标模块总览 - Overview
本分类做什么
在 前台 或 已绑定窗口 上模拟 移动、按键、滚轮与轨迹,并可查询 光标位置与形状。与 键盘 同属输入仿真;绑定模式、键鼠后端 多在 SetConfig 中配置,而非单个鼠标接口内写完。
一、移动类:绝对 / 相对 / 无仿真
| 接口 | 差异 |
|---|---|
| MoveTo | 绝对坐标 移动到屏幕或绑定上下文(依模式)。可配合 SetMousePosCallback 矫正游戏内坐标偏差。 |
| MoveToEx | 在 矩形范围内随机 落点,适合防检测的「范围内点击」。 |
| MoveR | 相对当前位置 偏移。 |
| MoveToWithoutSimulator | 无视轨迹仿真,直接定位(与带轨迹的 MoveTo 对比)。 |
选型:要拟人轨迹 → 普通 MoveTo + 全局轨迹配置;要 瞬移 → MoveToWithoutSimulator;要 区域内随机 → MoveToEx。
二、按键类:左 / 右 / 中 / 双击
| 类型 | 按下/弹起 | 单击 | 双击 |
|---|---|---|---|
| 左键 | LeftDown / LeftUp | LeftClick | LeftDoubleClick |
| 右键 | RightDown / RightUp | RightClick | RightDoubleClick |
| 中键 | MiddleDown / MiddleUp | MiddleClick | MiddleDoubleClick |
差异:Down+Up 可自己插延时组合拖拽;Click 为一次完整点击;双击 独立接口,间隔受系统双击速度影响。
三、滚轮
| 接口 | 说明 |
|---|---|
| WheelUp、WheelDown | 纵向滚动;与某些绑定下「消息注入」行为有关,见详情页。 |
四、轨迹生成(不直接移动鼠标)
| 接口 | 差异 |
|---|---|
| GenerateMouseTrajectory | 生成 轨迹数据 供后续按点播放或分析。 |
| GenerateInvoluteMouseTrajectory | 渐开线 随机轨迹,与直线/贝塞尔类轨迹风格不同。 |
与 MoveTo 的区别:此处常返回 点列或缓冲区,需配合其它逻辑 逐步 MoveTo/MoveR;不是一条 API 完成移动。
五、查询与其它
| 接口 | 用途 |
|---|---|
| GetCursorPos | 当前指针 屏幕坐标。 |
| GetCursorShape、GetCursorImage | 光标 特征串 或 图像句柄,用于判断悬停状态(手型/箭头等)。 |
| EnableMouseAccuracy | 系统鼠标 增强精度 开关,影响真实指针行为。 |
六、游戏坐标偏差矫正(回调)
当游戏内鼠标与系统光标不一致时(RawInput、内存坐标等),可注册回调供 真实轨迹 MoveTo 矫正终点:
| 接口 | 用途 |
|---|---|
| MousePosCallback | 回调类型定义 |
| PackPoint | 坐标打包 |
| UnpackPoint | 坐标解包 |
| UnpackPointX / UnpackPointY | 单轴解包 |
| SetMousePosCallback | 注册回调 |
| ClearMousePosCallback | 清除回调 |
不影响 GetCursorPos。阈值见 SetConfig 项 MousePosCallbackMinOffset。
七、快速选型
| 需求 | 建议 |
|---|---|
| 后台绑定窗口点击 | 先 BindWindow,再 MoveTo+LeftClick,键鼠模式见 SetConfig |
| 防脚本检测、轨迹拟人 | SetConfig 轨迹参数 + GenerateMouseTrajectory 或内置轨迹 |
| 仅读鼠标位置不点击 | GetCursorPos(不受鼠标位置回调影响) |
| 游戏内坐标与系统光标不一致 | SetMousePosCallback + EnableRealMouse |
具体 dx/raw/VNC 等模式与 MoveR 相对谁 以当前版本详情页为准。
